package com.example.networkinteraction.manager;

import io.reactivex.disposables.Disposable;

/**
 * Description:
 * File: IRxRequestManager.java
 * Author: Administrator
 * Create: 2019/4/2 0002 下午 13:37
 */
public interface IRxRequestManager<T> {

    /**
     * 添加请求
     *
     * @param tag
     * @param disposable
     */
    void add(T tag, Disposable disposable);

    /**
     * 移除请求
     *
     * @param tag
     */
    void remove(T tag);

    /**
     * 取消tag的请求
     *
     * @param tag
     */
    void cancel(T tag);

    /**
     * 取消tag的请求
     *
     * @param tags
     */
    void cancel(T... tags);

    /**
     * 取消所有请求
     */
    void cancelAll();
}

